// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
info: Check x >> y operator in distinct points
es5id: 11.7.2_A4_T2
description: ShiftExpression = 2^n - 1, n = 16...31
---*/

//CHECK
 
if (-1 >> 16 !== -1) { 
  $ERROR('#513: -1 >> 16 === -1. Actual: ' + (-1 >> 16)); 
} 


if (-2 >> 16 !== -1) { 
  $ERROR('#514: -2 >> 16 === -1. Actual: ' + (-2 >> 16)); 
} 


if (-4 >> 16 !== -1) { 
  $ERROR('#515: -4 >> 16 === -1. Actual: ' + (-4 >> 16)); 
} 


if (-8 >> 16 !== -1) { 
  $ERROR('#516: -8 >> 16 === -1. Actual: ' + (-8 >> 16)); 
} 


if (-16 >> 16 !== -1) { 
  $ERROR('#517: -16 >> 16 === -1. Actual: ' + (-16 >> 16)); 
} 


if (-32 >> 16 !== -1) { 
  $ERROR('#518: -32 >> 16 === -1. Actual: ' + (-32 >> 16)); 
} 


if (-64 >> 16 !== -1) { 
  $ERROR('#519: -64 >> 16 === -1. Actual: ' + (-64 >> 16)); 
} 


if (-128 >> 16 !== -1) { 
  $ERROR('#520: -128 >> 16 === -1. Actual: ' + (-128 >> 16)); 
} 


if (-256 >> 16 !== -1) { 
  $ERROR('#521: -256 >> 16 === -1. Actual: ' + (-256 >> 16)); 
} 


if (-512 >> 16 !== -1) { 
  $ERROR('#522: -512 >> 16 === -1. Actual: ' + (-512 >> 16)); 
} 


if (-1024 >> 16 !== -1) { 
  $ERROR('#523: -1024 >> 16 === -1. Actual: ' + (-1024 >> 16)); 
} 


if (-2048 >> 16 !== -1) { 
  $ERROR('#524: -2048 >> 16 === -1. Actual: ' + (-2048 >> 16)); 
} 


if (-4096 >> 16 !== -1) { 
  $ERROR('#525: -4096 >> 16 === -1. Actual: ' + (-4096 >> 16)); 
} 


if (-8192 >> 16 !== -1) { 
  $ERROR('#526: -8192 >> 16 === -1. Actual: ' + (-8192 >> 16)); 
} 


if (-16384 >> 16 !== -1) { 
  $ERROR('#527: -16384 >> 16 === -1. Actual: ' + (-16384 >> 16)); 
} 


if (-32768 >> 16 !== -1) { 
  $ERROR('#528: -32768 >> 16 === -1. Actual: ' + (-32768 >> 16)); 
} 


if (-65536 >> 16 !== -1) { 
  $ERROR('#529: -65536 >> 16 === -1. Actual: ' + (-65536 >> 16)); 
} 


if (-131072 >> 16 !== -2) { 
  $ERROR('#530: -131072 >> 16 === -2. Actual: ' + (-131072 >> 16)); 
} 


if (-262144 >> 16 !== -4) { 
  $ERROR('#531: -262144 >> 16 === -4. Actual: ' + (-262144 >> 16)); 
} 


if (-524288 >> 16 !== -8) { 
  $ERROR('#532: -524288 >> 16 === -8. Actual: ' + (-524288 >> 16)); 
} 


if (-1048576 >> 16 !== -16) { 
  $ERROR('#533: -1048576 >> 16 === -16. Actual: ' + (-1048576 >> 16)); 
} 


if (-2097152 >> 16 !== -32) { 
  $ERROR('#534: -2097152 >> 16 === -32. Actual: ' + (-2097152 >> 16)); 
} 


if (-4194304 >> 16 !== -64) { 
  $ERROR('#535: -4194304 >> 16 === -64. Actual: ' + (-4194304 >> 16)); 
} 


if (-8388608 >> 16 !== -128) { 
  $ERROR('#536: -8388608 >> 16 === -128. Actual: ' + (-8388608 >> 16)); 
} 


if (-16777216 >> 16 !== -256) { 
  $ERROR('#537: -16777216 >> 16 === -256. Actual: ' + (-16777216 >> 16)); 
} 


if (-33554432 >> 16 !== -512) { 
  $ERROR('#538: -33554432 >> 16 === -512. Actual: ' + (-33554432 >> 16)); 
} 


if (-67108864 >> 16 !== -1024) { 
  $ERROR('#539: -67108864 >> 16 === -1024. Actual: ' + (-67108864 >> 16)); 
} 


if (-134217728 >> 16 !== -2048) { 
  $ERROR('#540: -134217728 >> 16 === -2048. Actual: ' + (-134217728 >> 16)); 
} 


if (-268435456 >> 16 !== -4096) { 
  $ERROR('#541: -268435456 >> 16 === -4096. Actual: ' + (-268435456 >> 16)); 
} 


if (-536870912 >> 16 !== -8192) { 
  $ERROR('#542: -536870912 >> 16 === -8192. Actual: ' + (-536870912 >> 16)); 
} 


if (-1073741824 >> 16 !== -16384) { 
  $ERROR('#543: -1073741824 >> 16 === -16384. Actual: ' + (-1073741824 >> 16)); 
} 


if (-2147483648 >> 16 !== -32768) { 
  $ERROR('#544: -2147483648 >> 16 === -32768. Actual: ' + (-2147483648 >> 16)); 
} 


if (-1 >> 17 !== -1) { 
  $ERROR('#545: -1 >> 17 === -1. Actual: ' + (-1 >> 17)); 
} 


if (-2 >> 17 !== -1) { 
  $ERROR('#546: -2 >> 17 === -1. Actual: ' + (-2 >> 17)); 
} 


if (-4 >> 17 !== -1) { 
  $ERROR('#547: -4 >> 17 === -1. Actual: ' + (-4 >> 17)); 
} 


if (-8 >> 17 !== -1) { 
  $ERROR('#548: -8 >> 17 === -1. Actual: ' + (-8 >> 17)); 
} 


if (-16 >> 17 !== -1) { 
  $ERROR('#549: -16 >> 17 === -1. Actual: ' + (-16 >> 17)); 
} 


if (-32 >> 17 !== -1) { 
  $ERROR('#550: -32 >> 17 === -1. Actual: ' + (-32 >> 17)); 
} 


if (-64 >> 17 !== -1) { 
  $ERROR('#551: -64 >> 17 === -1. Actual: ' + (-64 >> 17)); 
} 


if (-128 >> 17 !== -1) { 
  $ERROR('#552: -128 >> 17 === -1. Actual: ' + (-128 >> 17)); 
} 


if (-256 >> 17 !== -1) { 
  $ERROR('#553: -256 >> 17 === -1. Actual: ' + (-256 >> 17)); 
} 


if (-512 >> 17 !== -1) { 
  $ERROR('#554: -512 >> 17 === -1. Actual: ' + (-512 >> 17)); 
} 


if (-1024 >> 17 !== -1) { 
  $ERROR('#555: -1024 >> 17 === -1. Actual: ' + (-1024 >> 17)); 
} 


if (-2048 >> 17 !== -1) { 
  $ERROR('#556: -2048 >> 17 === -1. Actual: ' + (-2048 >> 17)); 
} 


if (-4096 >> 17 !== -1) { 
  $ERROR('#557: -4096 >> 17 === -1. Actual: ' + (-4096 >> 17)); 
} 


if (-8192 >> 17 !== -1) { 
  $ERROR('#558: -8192 >> 17 === -1. Actual: ' + (-8192 >> 17)); 
} 


if (-16384 >> 17 !== -1) { 
  $ERROR('#559: -16384 >> 17 === -1. Actual: ' + (-16384 >> 17)); 
} 


if (-32768 >> 17 !== -1) { 
  $ERROR('#560: -32768 >> 17 === -1. Actual: ' + (-32768 >> 17)); 
} 


if (-65536 >> 17 !== -1) { 
  $ERROR('#561: -65536 >> 17 === -1. Actual: ' + (-65536 >> 17)); 
} 


if (-131072 >> 17 !== -1) { 
  $ERROR('#562: -131072 >> 17 === -1. Actual: ' + (-131072 >> 17)); 
} 


if (-262144 >> 17 !== -2) { 
  $ERROR('#563: -262144 >> 17 === -2. Actual: ' + (-262144 >> 17)); 
} 


if (-524288 >> 17 !== -4) { 
  $ERROR('#564: -524288 >> 17 === -4. Actual: ' + (-524288 >> 17)); 
} 


if (-1048576 >> 17 !== -8) { 
  $ERROR('#565: -1048576 >> 17 === -8. Actual: ' + (-1048576 >> 17)); 
} 


if (-2097152 >> 17 !== -16) { 
  $ERROR('#566: -2097152 >> 17 === -16. Actual: ' + (-2097152 >> 17)); 
} 


if (-4194304 >> 17 !== -32) { 
  $ERROR('#567: -4194304 >> 17 === -32. Actual: ' + (-4194304 >> 17)); 
} 


if (-8388608 >> 17 !== -64) { 
  $ERROR('#568: -8388608 >> 17 === -64. Actual: ' + (-8388608 >> 17)); 
} 


if (-16777216 >> 17 !== -128) { 
  $ERROR('#569: -16777216 >> 17 === -128. Actual: ' + (-16777216 >> 17)); 
} 


if (-33554432 >> 17 !== -256) { 
  $ERROR('#570: -33554432 >> 17 === -256. Actual: ' + (-33554432 >> 17)); 
} 


if (-67108864 >> 17 !== -512) { 
  $ERROR('#571: -67108864 >> 17 === -512. Actual: ' + (-67108864 >> 17)); 
} 


if (-134217728 >> 17 !== -1024) { 
  $ERROR('#572: -134217728 >> 17 === -1024. Actual: ' + (-134217728 >> 17)); 
} 


if (-268435456 >> 17 !== -2048) { 
  $ERROR('#573: -268435456 >> 17 === -2048. Actual: ' + (-268435456 >> 17)); 
} 


if (-536870912 >> 17 !== -4096) { 
  $ERROR('#574: -536870912 >> 17 === -4096. Actual: ' + (-536870912 >> 17)); 
} 


if (-1073741824 >> 17 !== -8192) { 
  $ERROR('#575: -1073741824 >> 17 === -8192. Actual: ' + (-1073741824 >> 17)); 
} 


if (-2147483648 >> 17 !== -16384) { 
  $ERROR('#576: -2147483648 >> 17 === -16384. Actual: ' + (-2147483648 >> 17)); 
} 


if (-1 >> 18 !== -1) { 
  $ERROR('#577: -1 >> 18 === -1. Actual: ' + (-1 >> 18)); 
} 


if (-2 >> 18 !== -1) { 
  $ERROR('#578: -2 >> 18 === -1. Actual: ' + (-2 >> 18)); 
} 


if (-4 >> 18 !== -1) { 
  $ERROR('#579: -4 >> 18 === -1. Actual: ' + (-4 >> 18)); 
} 


if (-8 >> 18 !== -1) { 
  $ERROR('#580: -8 >> 18 === -1. Actual: ' + (-8 >> 18)); 
} 


if (-16 >> 18 !== -1) { 
  $ERROR('#581: -16 >> 18 === -1. Actual: ' + (-16 >> 18)); 
} 


if (-32 >> 18 !== -1) { 
  $ERROR('#582: -32 >> 18 === -1. Actual: ' + (-32 >> 18)); 
} 


if (-64 >> 18 !== -1) { 
  $ERROR('#583: -64 >> 18 === -1. Actual: ' + (-64 >> 18)); 
} 


if (-128 >> 18 !== -1) { 
  $ERROR('#584: -128 >> 18 === -1. Actual: ' + (-128 >> 18)); 
} 


if (-256 >> 18 !== -1) { 
  $ERROR('#585: -256 >> 18 === -1. Actual: ' + (-256 >> 18)); 
} 


if (-512 >> 18 !== -1) { 
  $ERROR('#586: -512 >> 18 === -1. Actual: ' + (-512 >> 18)); 
} 


if (-1024 >> 18 !== -1) { 
  $ERROR('#587: -1024 >> 18 === -1. Actual: ' + (-1024 >> 18)); 
} 


if (-2048 >> 18 !== -1) { 
  $ERROR('#588: -2048 >> 18 === -1. Actual: ' + (-2048 >> 18)); 
} 


if (-4096 >> 18 !== -1) { 
  $ERROR('#589: -4096 >> 18 === -1. Actual: ' + (-4096 >> 18)); 
} 


if (-8192 >> 18 !== -1) { 
  $ERROR('#590: -8192 >> 18 === -1. Actual: ' + (-8192 >> 18)); 
} 


if (-16384 >> 18 !== -1) { 
  $ERROR('#591: -16384 >> 18 === -1. Actual: ' + (-16384 >> 18)); 
} 


if (-32768 >> 18 !== -1) { 
  $ERROR('#592: -32768 >> 18 === -1. Actual: ' + (-32768 >> 18)); 
} 


if (-65536 >> 18 !== -1) { 
  $ERROR('#593: -65536 >> 18 === -1. Actual: ' + (-65536 >> 18)); 
} 


if (-131072 >> 18 !== -1) { 
  $ERROR('#594: -131072 >> 18 === -1. Actual: ' + (-131072 >> 18)); 
} 


if (-262144 >> 18 !== -1) { 
  $ERROR('#595: -262144 >> 18 === -1. Actual: ' + (-262144 >> 18)); 
} 


if (-524288 >> 18 !== -2) { 
  $ERROR('#596: -524288 >> 18 === -2. Actual: ' + (-524288 >> 18)); 
} 


if (-1048576 >> 18 !== -4) { 
  $ERROR('#597: -1048576 >> 18 === -4. Actual: ' + (-1048576 >> 18)); 
} 


if (-2097152 >> 18 !== -8) { 
  $ERROR('#598: -2097152 >> 18 === -8. Actual: ' + (-2097152 >> 18)); 
} 


if (-4194304 >> 18 !== -16) { 
  $ERROR('#599: -4194304 >> 18 === -16. Actual: ' + (-4194304 >> 18)); 
} 


if (-8388608 >> 18 !== -32) { 
  $ERROR('#600: -8388608 >> 18 === -32. Actual: ' + (-8388608 >> 18)); 
} 


if (-16777216 >> 18 !== -64) { 
  $ERROR('#601: -16777216 >> 18 === -64. Actual: ' + (-16777216 >> 18)); 
} 


if (-33554432 >> 18 !== -128) { 
  $ERROR('#602: -33554432 >> 18 === -128. Actual: ' + (-33554432 >> 18)); 
} 


if (-67108864 >> 18 !== -256) { 
  $ERROR('#603: -67108864 >> 18 === -256. Actual: ' + (-67108864 >> 18)); 
} 


if (-134217728 >> 18 !== -512) { 
  $ERROR('#604: -134217728 >> 18 === -512. Actual: ' + (-134217728 >> 18)); 
} 


if (-268435456 >> 18 !== -1024) { 
  $ERROR('#605: -268435456 >> 18 === -1024. Actual: ' + (-268435456 >> 18)); 
} 


if (-536870912 >> 18 !== -2048) { 
  $ERROR('#606: -536870912 >> 18 === -2048. Actual: ' + (-536870912 >> 18)); 
} 


if (-1073741824 >> 18 !== -4096) { 
  $ERROR('#607: -1073741824 >> 18 === -4096. Actual: ' + (-1073741824 >> 18)); 
} 


if (-2147483648 >> 18 !== -8192) { 
  $ERROR('#608: -2147483648 >> 18 === -8192. Actual: ' + (-2147483648 >> 18)); 
} 


if (-1 >> 19 !== -1) { 
  $ERROR('#609: -1 >> 19 === -1. Actual: ' + (-1 >> 19)); 
} 


if (-2 >> 19 !== -1) { 
  $ERROR('#610: -2 >> 19 === -1. Actual: ' + (-2 >> 19)); 
} 


if (-4 >> 19 !== -1) { 
  $ERROR('#611: -4 >> 19 === -1. Actual: ' + (-4 >> 19)); 
} 


if (-8 >> 19 !== -1) { 
  $ERROR('#612: -8 >> 19 === -1. Actual: ' + (-8 >> 19)); 
} 


if (-16 >> 19 !== -1) { 
  $ERROR('#613: -16 >> 19 === -1. Actual: ' + (-16 >> 19)); 
} 


if (-32 >> 19 !== -1) { 
  $ERROR('#614: -32 >> 19 === -1. Actual: ' + (-32 >> 19)); 
} 


if (-64 >> 19 !== -1) { 
  $ERROR('#615: -64 >> 19 === -1. Actual: ' + (-64 >> 19)); 
} 


if (-128 >> 19 !== -1) { 
  $ERROR('#616: -128 >> 19 === -1. Actual: ' + (-128 >> 19)); 
} 


if (-256 >> 19 !== -1) { 
  $ERROR('#617: -256 >> 19 === -1. Actual: ' + (-256 >> 19)); 
} 


if (-512 >> 19 !== -1) { 
  $ERROR('#618: -512 >> 19 === -1. Actual: ' + (-512 >> 19)); 
} 


if (-1024 >> 19 !== -1) { 
  $ERROR('#619: -1024 >> 19 === -1. Actual: ' + (-1024 >> 19)); 
} 


if (-2048 >> 19 !== -1) { 
  $ERROR('#620: -2048 >> 19 === -1. Actual: ' + (-2048 >> 19)); 
} 


if (-4096 >> 19 !== -1) { 
  $ERROR('#621: -4096 >> 19 === -1. Actual: ' + (-4096 >> 19)); 
} 


if (-8192 >> 19 !== -1) { 
  $ERROR('#622: -8192 >> 19 === -1. Actual: ' + (-8192 >> 19)); 
} 


if (-16384 >> 19 !== -1) { 
  $ERROR('#623: -16384 >> 19 === -1. Actual: ' + (-16384 >> 19)); 
} 


if (-32768 >> 19 !== -1) { 
  $ERROR('#624: -32768 >> 19 === -1. Actual: ' + (-32768 >> 19)); 
} 


if (-65536 >> 19 !== -1) { 
  $ERROR('#625: -65536 >> 19 === -1. Actual: ' + (-65536 >> 19)); 
} 


if (-131072 >> 19 !== -1) { 
  $ERROR('#626: -131072 >> 19 === -1. Actual: ' + (-131072 >> 19)); 
} 


if (-262144 >> 19 !== -1) { 
  $ERROR('#627: -262144 >> 19 === -1. Actual: ' + (-262144 >> 19)); 
} 


if (-524288 >> 19 !== -1) { 
  $ERROR('#628: -524288 >> 19 === -1. Actual: ' + (-524288 >> 19)); 
} 


if (-1048576 >> 19 !== -2) { 
  $ERROR('#629: -1048576 >> 19 === -2. Actual: ' + (-1048576 >> 19)); 
} 


if (-2097152 >> 19 !== -4) { 
  $ERROR('#630: -2097152 >> 19 === -4. Actual: ' + (-2097152 >> 19)); 
} 


if (-4194304 >> 19 !== -8) { 
  $ERROR('#631: -4194304 >> 19 === -8. Actual: ' + (-4194304 >> 19)); 
} 


if (-8388608 >> 19 !== -16) { 
  $ERROR('#632: -8388608 >> 19 === -16. Actual: ' + (-8388608 >> 19)); 
} 


if (-16777216 >> 19 !== -32) { 
  $ERROR('#633: -16777216 >> 19 === -32. Actual: ' + (-16777216 >> 19)); 
} 


if (-33554432 >> 19 !== -64) { 
  $ERROR('#634: -33554432 >> 19 === -64. Actual: ' + (-33554432 >> 19)); 
} 


if (-67108864 >> 19 !== -128) { 
  $ERROR('#635: -67108864 >> 19 === -128. Actual: ' + (-67108864 >> 19)); 
} 


if (-134217728 >> 19 !== -256) { 
  $ERROR('#636: -134217728 >> 19 === -256. Actual: ' + (-134217728 >> 19)); 
} 


if (-268435456 >> 19 !== -512) { 
  $ERROR('#637: -268435456 >> 19 === -512. Actual: ' + (-268435456 >> 19)); 
} 


if (-536870912 >> 19 !== -1024) { 
  $ERROR('#638: -536870912 >> 19 === -1024. Actual: ' + (-536870912 >> 19)); 
} 


if (-1073741824 >> 19 !== -2048) { 
  $ERROR('#639: -1073741824 >> 19 === -2048. Actual: ' + (-1073741824 >> 19)); 
} 


if (-2147483648 >> 19 !== -4096) { 
  $ERROR('#640: -2147483648 >> 19 === -4096. Actual: ' + (-2147483648 >> 19)); 
} 


if (-1 >> 20 !== -1) { 
  $ERROR('#641: -1 >> 20 === -1. Actual: ' + (-1 >> 20)); 
} 


if (-2 >> 20 !== -1) { 
  $ERROR('#642: -2 >> 20 === -1. Actual: ' + (-2 >> 20)); 
} 


if (-4 >> 20 !== -1) { 
  $ERROR('#643: -4 >> 20 === -1. Actual: ' + (-4 >> 20)); 
} 


if (-8 >> 20 !== -1) { 
  $ERROR('#644: -8 >> 20 === -1. Actual: ' + (-8 >> 20)); 
} 


if (-16 >> 20 !== -1) { 
  $ERROR('#645: -16 >> 20 === -1. Actual: ' + (-16 >> 20)); 
} 


if (-32 >> 20 !== -1) { 
  $ERROR('#646: -32 >> 20 === -1. Actual: ' + (-32 >> 20)); 
} 


if (-64 >> 20 !== -1) { 
  $ERROR('#647: -64 >> 20 === -1. Actual: ' + (-64 >> 20)); 
} 


if (-128 >> 20 !== -1) { 
  $ERROR('#648: -128 >> 20 === -1. Actual: ' + (-128 >> 20)); 
} 


if (-256 >> 20 !== -1) { 
  $ERROR('#649: -256 >> 20 === -1. Actual: ' + (-256 >> 20)); 
} 


if (-512 >> 20 !== -1) { 
  $ERROR('#650: -512 >> 20 === -1. Actual: ' + (-512 >> 20)); 
} 


if (-1024 >> 20 !== -1) { 
  $ERROR('#651: -1024 >> 20 === -1. Actual: ' + (-1024 >> 20)); 
} 


if (-2048 >> 20 !== -1) { 
  $ERROR('#652: -2048 >> 20 === -1. Actual: ' + (-2048 >> 20)); 
} 


if (-4096 >> 20 !== -1) { 
  $ERROR('#653: -4096 >> 20 === -1. Actual: ' + (-4096 >> 20)); 
} 


if (-8192 >> 20 !== -1) { 
  $ERROR('#654: -8192 >> 20 === -1. Actual: ' + (-8192 >> 20)); 
} 


if (-16384 >> 20 !== -1) { 
  $ERROR('#655: -16384 >> 20 === -1. Actual: ' + (-16384 >> 20)); 
} 


if (-32768 >> 20 !== -1) { 
  $ERROR('#656: -32768 >> 20 === -1. Actual: ' + (-32768 >> 20)); 
} 


if (-65536 >> 20 !== -1) { 
  $ERROR('#657: -65536 >> 20 === -1. Actual: ' + (-65536 >> 20)); 
} 


if (-131072 >> 20 !== -1) { 
  $ERROR('#658: -131072 >> 20 === -1. Actual: ' + (-131072 >> 20)); 
} 


if (-262144 >> 20 !== -1) { 
  $ERROR('#659: -262144 >> 20 === -1. Actual: ' + (-262144 >> 20)); 
} 


if (-524288 >> 20 !== -1) { 
  $ERROR('#660: -524288 >> 20 === -1. Actual: ' + (-524288 >> 20)); 
} 


if (-1048576 >> 20 !== -1) { 
  $ERROR('#661: -1048576 >> 20 === -1. Actual: ' + (-1048576 >> 20)); 
} 


if (-2097152 >> 20 !== -2) { 
  $ERROR('#662: -2097152 >> 20 === -2. Actual: ' + (-2097152 >> 20)); 
} 


if (-4194304 >> 20 !== -4) { 
  $ERROR('#663: -4194304 >> 20 === -4. Actual: ' + (-4194304 >> 20)); 
} 


if (-8388608 >> 20 !== -8) { 
  $ERROR('#664: -8388608 >> 20 === -8. Actual: ' + (-8388608 >> 20)); 
} 


if (-16777216 >> 20 !== -16) { 
  $ERROR('#665: -16777216 >> 20 === -16. Actual: ' + (-16777216 >> 20)); 
} 


if (-33554432 >> 20 !== -32) { 
  $ERROR('#666: -33554432 >> 20 === -32. Actual: ' + (-33554432 >> 20)); 
} 


if (-67108864 >> 20 !== -64) { 
  $ERROR('#667: -67108864 >> 20 === -64. Actual: ' + (-67108864 >> 20)); 
} 


if (-134217728 >> 20 !== -128) { 
  $ERROR('#668: -134217728 >> 20 === -128. Actual: ' + (-134217728 >> 20)); 
} 


if (-268435456 >> 20 !== -256) { 
  $ERROR('#669: -268435456 >> 20 === -256. Actual: ' + (-268435456 >> 20)); 
} 


if (-536870912 >> 20 !== -512) { 
  $ERROR('#670: -536870912 >> 20 === -512. Actual: ' + (-536870912 >> 20)); 
} 


if (-1073741824 >> 20 !== -1024) { 
  $ERROR('#671: -1073741824 >> 20 === -1024. Actual: ' + (-1073741824 >> 20)); 
} 


if (-2147483648 >> 20 !== -2048) { 
  $ERROR('#672: -2147483648 >> 20 === -2048. Actual: ' + (-2147483648 >> 20)); 
} 


if (-1 >> 21 !== -1) { 
  $ERROR('#673: -1 >> 21 === -1. Actual: ' + (-1 >> 21)); 
} 


if (-2 >> 21 !== -1) { 
  $ERROR('#674: -2 >> 21 === -1. Actual: ' + (-2 >> 21)); 
} 


if (-4 >> 21 !== -1) { 
  $ERROR('#675: -4 >> 21 === -1. Actual: ' + (-4 >> 21)); 
} 


if (-8 >> 21 !== -1) { 
  $ERROR('#676: -8 >> 21 === -1. Actual: ' + (-8 >> 21)); 
} 


if (-16 >> 21 !== -1) { 
  $ERROR('#677: -16 >> 21 === -1. Actual: ' + (-16 >> 21)); 
} 


if (-32 >> 21 !== -1) { 
  $ERROR('#678: -32 >> 21 === -1. Actual: ' + (-32 >> 21)); 
} 


if (-64 >> 21 !== -1) { 
  $ERROR('#679: -64 >> 21 === -1. Actual: ' + (-64 >> 21)); 
} 


if (-128 >> 21 !== -1) { 
  $ERROR('#680: -128 >> 21 === -1. Actual: ' + (-128 >> 21)); 
} 


if (-256 >> 21 !== -1) { 
  $ERROR('#681: -256 >> 21 === -1. Actual: ' + (-256 >> 21)); 
} 


if (-512 >> 21 !== -1) { 
  $ERROR('#682: -512 >> 21 === -1. Actual: ' + (-512 >> 21)); 
} 


if (-1024 >> 21 !== -1) { 
  $ERROR('#683: -1024 >> 21 === -1. Actual: ' + (-1024 >> 21)); 
} 


if (-2048 >> 21 !== -1) { 
  $ERROR('#684: -2048 >> 21 === -1. Actual: ' + (-2048 >> 21)); 
} 


if (-4096 >> 21 !== -1) { 
  $ERROR('#685: -4096 >> 21 === -1. Actual: ' + (-4096 >> 21)); 
} 


if (-8192 >> 21 !== -1) { 
  $ERROR('#686: -8192 >> 21 === -1. Actual: ' + (-8192 >> 21)); 
} 


if (-16384 >> 21 !== -1) { 
  $ERROR('#687: -16384 >> 21 === -1. Actual: ' + (-16384 >> 21)); 
} 


if (-32768 >> 21 !== -1) { 
  $ERROR('#688: -32768 >> 21 === -1. Actual: ' + (-32768 >> 21)); 
} 


if (-65536 >> 21 !== -1) { 
  $ERROR('#689: -65536 >> 21 === -1. Actual: ' + (-65536 >> 21)); 
} 


if (-131072 >> 21 !== -1) { 
  $ERROR('#690: -131072 >> 21 === -1. Actual: ' + (-131072 >> 21)); 
} 


if (-262144 >> 21 !== -1) { 
  $ERROR('#691: -262144 >> 21 === -1. Actual: ' + (-262144 >> 21)); 
} 


if (-524288 >> 21 !== -1) { 
  $ERROR('#692: -524288 >> 21 === -1. Actual: ' + (-524288 >> 21)); 
} 


if (-1048576 >> 21 !== -1) { 
  $ERROR('#693: -1048576 >> 21 === -1. Actual: ' + (-1048576 >> 21)); 
} 


if (-2097152 >> 21 !== -1) { 
  $ERROR('#694: -2097152 >> 21 === -1. Actual: ' + (-2097152 >> 21)); 
} 


if (-4194304 >> 21 !== -2) { 
  $ERROR('#695: -4194304 >> 21 === -2. Actual: ' + (-4194304 >> 21)); 
} 


if (-8388608 >> 21 !== -4) { 
  $ERROR('#696: -8388608 >> 21 === -4. Actual: ' + (-8388608 >> 21)); 
} 


if (-16777216 >> 21 !== -8) { 
  $ERROR('#697: -16777216 >> 21 === -8. Actual: ' + (-16777216 >> 21)); 
} 


if (-33554432 >> 21 !== -16) { 
  $ERROR('#698: -33554432 >> 21 === -16. Actual: ' + (-33554432 >> 21)); 
} 


if (-67108864 >> 21 !== -32) { 
  $ERROR('#699: -67108864 >> 21 === -32. Actual: ' + (-67108864 >> 21)); 
} 


if (-134217728 >> 21 !== -64) { 
  $ERROR('#700: -134217728 >> 21 === -64. Actual: ' + (-134217728 >> 21)); 
} 


if (-268435456 >> 21 !== -128) { 
  $ERROR('#701: -268435456 >> 21 === -128. Actual: ' + (-268435456 >> 21)); 
} 


if (-536870912 >> 21 !== -256) { 
  $ERROR('#702: -536870912 >> 21 === -256. Actual: ' + (-536870912 >> 21)); 
} 


if (-1073741824 >> 21 !== -512) { 
  $ERROR('#703: -1073741824 >> 21 === -512. Actual: ' + (-1073741824 >> 21)); 
} 


if (-2147483648 >> 21 !== -1024) { 
  $ERROR('#704: -2147483648 >> 21 === -1024. Actual: ' + (-2147483648 >> 21)); 
} 


if (-1 >> 22 !== -1) { 
  $ERROR('#705: -1 >> 22 === -1. Actual: ' + (-1 >> 22)); 
} 


if (-2 >> 22 !== -1) { 
  $ERROR('#706: -2 >> 22 === -1. Actual: ' + (-2 >> 22)); 
} 


if (-4 >> 22 !== -1) { 
  $ERROR('#707: -4 >> 22 === -1. Actual: ' + (-4 >> 22)); 
} 


if (-8 >> 22 !== -1) { 
  $ERROR('#708: -8 >> 22 === -1. Actual: ' + (-8 >> 22)); 
} 


if (-16 >> 22 !== -1) { 
  $ERROR('#709: -16 >> 22 === -1. Actual: ' + (-16 >> 22)); 
} 


if (-32 >> 22 !== -1) { 
  $ERROR('#710: -32 >> 22 === -1. Actual: ' + (-32 >> 22)); 
} 


if (-64 >> 22 !== -1) { 
  $ERROR('#711: -64 >> 22 === -1. Actual: ' + (-64 >> 22)); 
} 


if (-128 >> 22 !== -1) { 
  $ERROR('#712: -128 >> 22 === -1. Actual: ' + (-128 >> 22)); 
} 


if (-256 >> 22 !== -1) { 
  $ERROR('#713: -256 >> 22 === -1. Actual: ' + (-256 >> 22)); 
} 


if (-512 >> 22 !== -1) { 
  $ERROR('#714: -512 >> 22 === -1. Actual: ' + (-512 >> 22)); 
} 


if (-1024 >> 22 !== -1) { 
  $ERROR('#715: -1024 >> 22 === -1. Actual: ' + (-1024 >> 22)); 
} 


if (-2048 >> 22 !== -1) { 
  $ERROR('#716: -2048 >> 22 === -1. Actual: ' + (-2048 >> 22)); 
} 


if (-4096 >> 22 !== -1) { 
  $ERROR('#717: -4096 >> 22 === -1. Actual: ' + (-4096 >> 22)); 
} 


if (-8192 >> 22 !== -1) { 
  $ERROR('#718: -8192 >> 22 === -1. Actual: ' + (-8192 >> 22)); 
} 


if (-16384 >> 22 !== -1) { 
  $ERROR('#719: -16384 >> 22 === -1. Actual: ' + (-16384 >> 22)); 
} 


if (-32768 >> 22 !== -1) { 
  $ERROR('#720: -32768 >> 22 === -1. Actual: ' + (-32768 >> 22)); 
} 


if (-65536 >> 22 !== -1) { 
  $ERROR('#721: -65536 >> 22 === -1. Actual: ' + (-65536 >> 22)); 
} 


if (-131072 >> 22 !== -1) { 
  $ERROR('#722: -131072 >> 22 === -1. Actual: ' + (-131072 >> 22)); 
} 


if (-262144 >> 22 !== -1) { 
  $ERROR('#723: -262144 >> 22 === -1. Actual: ' + (-262144 >> 22)); 
} 


if (-524288 >> 22 !== -1) { 
  $ERROR('#724: -524288 >> 22 === -1. Actual: ' + (-524288 >> 22)); 
} 


if (-1048576 >> 22 !== -1) { 
  $ERROR('#725: -1048576 >> 22 === -1. Actual: ' + (-1048576 >> 22)); 
} 


if (-2097152 >> 22 !== -1) { 
  $ERROR('#726: -2097152 >> 22 === -1. Actual: ' + (-2097152 >> 22)); 
} 


if (-4194304 >> 22 !== -1) { 
  $ERROR('#727: -4194304 >> 22 === -1. Actual: ' + (-4194304 >> 22)); 
} 


if (-8388608 >> 22 !== -2) { 
  $ERROR('#728: -8388608 >> 22 === -2. Actual: ' + (-8388608 >> 22)); 
} 


if (-16777216 >> 22 !== -4) { 
  $ERROR('#729: -16777216 >> 22 === -4. Actual: ' + (-16777216 >> 22)); 
} 


if (-33554432 >> 22 !== -8) { 
  $ERROR('#730: -33554432 >> 22 === -8. Actual: ' + (-33554432 >> 22)); 
} 


if (-67108864 >> 22 !== -16) { 
  $ERROR('#731: -67108864 >> 22 === -16. Actual: ' + (-67108864 >> 22)); 
} 


if (-134217728 >> 22 !== -32) { 
  $ERROR('#732: -134217728 >> 22 === -32. Actual: ' + (-134217728 >> 22)); 
} 


if (-268435456 >> 22 !== -64) { 
  $ERROR('#733: -268435456 >> 22 === -64. Actual: ' + (-268435456 >> 22)); 
} 


if (-536870912 >> 22 !== -128) { 
  $ERROR('#734: -536870912 >> 22 === -128. Actual: ' + (-536870912 >> 22)); 
} 


if (-1073741824 >> 22 !== -256) { 
  $ERROR('#735: -1073741824 >> 22 === -256. Actual: ' + (-1073741824 >> 22)); 
} 


if (-2147483648 >> 22 !== -512) { 
  $ERROR('#736: -2147483648 >> 22 === -512. Actual: ' + (-2147483648 >> 22)); 
} 


if (-1 >> 23 !== -1) { 
  $ERROR('#737: -1 >> 23 === -1. Actual: ' + (-1 >> 23)); 
} 


if (-2 >> 23 !== -1) { 
  $ERROR('#738: -2 >> 23 === -1. Actual: ' + (-2 >> 23)); 
} 


if (-4 >> 23 !== -1) { 
  $ERROR('#739: -4 >> 23 === -1. Actual: ' + (-4 >> 23)); 
} 


if (-8 >> 23 !== -1) { 
  $ERROR('#740: -8 >> 23 === -1. Actual: ' + (-8 >> 23)); 
} 


if (-16 >> 23 !== -1) { 
  $ERROR('#741: -16 >> 23 === -1. Actual: ' + (-16 >> 23)); 
} 


if (-32 >> 23 !== -1) { 
  $ERROR('#742: -32 >> 23 === -1. Actual: ' + (-32 >> 23)); 
} 


if (-64 >> 23 !== -1) { 
  $ERROR('#743: -64 >> 23 === -1. Actual: ' + (-64 >> 23)); 
} 


if (-128 >> 23 !== -1) { 
  $ERROR('#744: -128 >> 23 === -1. Actual: ' + (-128 >> 23)); 
} 


if (-256 >> 23 !== -1) { 
  $ERROR('#745: -256 >> 23 === -1. Actual: ' + (-256 >> 23)); 
} 


if (-512 >> 23 !== -1) { 
  $ERROR('#746: -512 >> 23 === -1. Actual: ' + (-512 >> 23)); 
} 


if (-1024 >> 23 !== -1) { 
  $ERROR('#747: -1024 >> 23 === -1. Actual: ' + (-1024 >> 23)); 
} 


if (-2048 >> 23 !== -1) { 
  $ERROR('#748: -2048 >> 23 === -1. Actual: ' + (-2048 >> 23)); 
} 


if (-4096 >> 23 !== -1) { 
  $ERROR('#749: -4096 >> 23 === -1. Actual: ' + (-4096 >> 23)); 
} 


if (-8192 >> 23 !== -1) { 
  $ERROR('#750: -8192 >> 23 === -1. Actual: ' + (-8192 >> 23)); 
} 


if (-16384 >> 23 !== -1) { 
  $ERROR('#751: -16384 >> 23 === -1. Actual: ' + (-16384 >> 23)); 
} 


if (-32768 >> 23 !== -1) { 
  $ERROR('#752: -32768 >> 23 === -1. Actual: ' + (-32768 >> 23)); 
} 


if (-65536 >> 23 !== -1) { 
  $ERROR('#753: -65536 >> 23 === -1. Actual: ' + (-65536 >> 23)); 
} 


if (-131072 >> 23 !== -1) { 
  $ERROR('#754: -131072 >> 23 === -1. Actual: ' + (-131072 >> 23)); 
} 


if (-262144 >> 23 !== -1) { 
  $ERROR('#755: -262144 >> 23 === -1. Actual: ' + (-262144 >> 23)); 
} 


if (-524288 >> 23 !== -1) { 
  $ERROR('#756: -524288 >> 23 === -1. Actual: ' + (-524288 >> 23)); 
} 


if (-1048576 >> 23 !== -1) { 
  $ERROR('#757: -1048576 >> 23 === -1. Actual: ' + (-1048576 >> 23)); 
} 


if (-2097152 >> 23 !== -1) { 
  $ERROR('#758: -2097152 >> 23 === -1. Actual: ' + (-2097152 >> 23)); 
} 


if (-4194304 >> 23 !== -1) { 
  $ERROR('#759: -4194304 >> 23 === -1. Actual: ' + (-4194304 >> 23)); 
} 


if (-8388608 >> 23 !== -1) { 
  $ERROR('#760: -8388608 >> 23 === -1. Actual: ' + (-8388608 >> 23)); 
} 


if (-16777216 >> 23 !== -2) { 
  $ERROR('#761: -16777216 >> 23 === -2. Actual: ' + (-16777216 >> 23)); 
} 


if (-33554432 >> 23 !== -4) { 
  $ERROR('#762: -33554432 >> 23 === -4. Actual: ' + (-33554432 >> 23)); 
} 


if (-67108864 >> 23 !== -8) { 
  $ERROR('#763: -67108864 >> 23 === -8. Actual: ' + (-67108864 >> 23)); 
} 


if (-134217728 >> 23 !== -16) { 
  $ERROR('#764: -134217728 >> 23 === -16. Actual: ' + (-134217728 >> 23)); 
} 


if (-268435456 >> 23 !== -32) { 
  $ERROR('#765: -268435456 >> 23 === -32. Actual: ' + (-268435456 >> 23)); 
} 


if (-536870912 >> 23 !== -64) { 
  $ERROR('#766: -536870912 >> 23 === -64. Actual: ' + (-536870912 >> 23)); 
} 


if (-1073741824 >> 23 !== -128) { 
  $ERROR('#767: -1073741824 >> 23 === -128. Actual: ' + (-1073741824 >> 23)); 
} 


if (-2147483648 >> 23 !== -256) { 
  $ERROR('#768: -2147483648 >> 23 === -256. Actual: ' + (-2147483648 >> 23)); 
} 


if (-1 >> 24 !== -1) { 
  $ERROR('#769: -1 >> 24 === -1. Actual: ' + (-1 >> 24)); 
} 


if (-2 >> 24 !== -1) { 
  $ERROR('#770: -2 >> 24 === -1. Actual: ' + (-2 >> 24)); 
} 


if (-4 >> 24 !== -1) { 
  $ERROR('#771: -4 >> 24 === -1. Actual: ' + (-4 >> 24)); 
} 


if (-8 >> 24 !== -1) { 
  $ERROR('#772: -8 >> 24 === -1. Actual: ' + (-8 >> 24)); 
} 


if (-16 >> 24 !== -1) { 
  $ERROR('#773: -16 >> 24 === -1. Actual: ' + (-16 >> 24)); 
} 


if (-32 >> 24 !== -1) { 
  $ERROR('#774: -32 >> 24 === -1. Actual: ' + (-32 >> 24)); 
} 


if (-64 >> 24 !== -1) { 
  $ERROR('#775: -64 >> 24 === -1. Actual: ' + (-64 >> 24)); 
} 


if (-128 >> 24 !== -1) { 
  $ERROR('#776: -128 >> 24 === -1. Actual: ' + (-128 >> 24)); 
} 


if (-256 >> 24 !== -1) { 
  $ERROR('#777: -256 >> 24 === -1. Actual: ' + (-256 >> 24)); 
} 


if (-512 >> 24 !== -1) { 
  $ERROR('#778: -512 >> 24 === -1. Actual: ' + (-512 >> 24)); 
} 


if (-1024 >> 24 !== -1) { 
  $ERROR('#779: -1024 >> 24 === -1. Actual: ' + (-1024 >> 24)); 
} 


if (-2048 >> 24 !== -1) { 
  $ERROR('#780: -2048 >> 24 === -1. Actual: ' + (-2048 >> 24)); 
} 


if (-4096 >> 24 !== -1) { 
  $ERROR('#781: -4096 >> 24 === -1. Actual: ' + (-4096 >> 24)); 
} 


if (-8192 >> 24 !== -1) { 
  $ERROR('#782: -8192 >> 24 === -1. Actual: ' + (-8192 >> 24)); 
} 


if (-16384 >> 24 !== -1) { 
  $ERROR('#783: -16384 >> 24 === -1. Actual: ' + (-16384 >> 24)); 
} 


if (-32768 >> 24 !== -1) { 
  $ERROR('#784: -32768 >> 24 === -1. Actual: ' + (-32768 >> 24)); 
} 


if (-65536 >> 24 !== -1) { 
  $ERROR('#785: -65536 >> 24 === -1. Actual: ' + (-65536 >> 24)); 
} 


if (-131072 >> 24 !== -1) { 
  $ERROR('#786: -131072 >> 24 === -1. Actual: ' + (-131072 >> 24)); 
} 


if (-262144 >> 24 !== -1) { 
  $ERROR('#787: -262144 >> 24 === -1. Actual: ' + (-262144 >> 24)); 
} 


if (-524288 >> 24 !== -1) { 
  $ERROR('#788: -524288 >> 24 === -1. Actual: ' + (-524288 >> 24)); 
} 


if (-1048576 >> 24 !== -1) { 
  $ERROR('#789: -1048576 >> 24 === -1. Actual: ' + (-1048576 >> 24)); 
} 


if (-2097152 >> 24 !== -1) { 
  $ERROR('#790: -2097152 >> 24 === -1. Actual: ' + (-2097152 >> 24)); 
} 


if (-4194304 >> 24 !== -1) { 
  $ERROR('#791: -4194304 >> 24 === -1. Actual: ' + (-4194304 >> 24)); 
} 


if (-8388608 >> 24 !== -1) { 
  $ERROR('#792: -8388608 >> 24 === -1. Actual: ' + (-8388608 >> 24)); 
} 


if (-16777216 >> 24 !== -1) { 
  $ERROR('#793: -16777216 >> 24 === -1. Actual: ' + (-16777216 >> 24)); 
} 


if (-33554432 >> 24 !== -2) { 
  $ERROR('#794: -33554432 >> 24 === -2. Actual: ' + (-33554432 >> 24)); 
} 


if (-67108864 >> 24 !== -4) { 
  $ERROR('#795: -67108864 >> 24 === -4. Actual: ' + (-67108864 >> 24)); 
} 


if (-134217728 >> 24 !== -8) { 
  $ERROR('#796: -134217728 >> 24 === -8. Actual: ' + (-134217728 >> 24)); 
} 


if (-268435456 >> 24 !== -16) { 
  $ERROR('#797: -268435456 >> 24 === -16. Actual: ' + (-268435456 >> 24)); 
} 


if (-536870912 >> 24 !== -32) { 
  $ERROR('#798: -536870912 >> 24 === -32. Actual: ' + (-536870912 >> 24)); 
} 


if (-1073741824 >> 24 !== -64) { 
  $ERROR('#799: -1073741824 >> 24 === -64. Actual: ' + (-1073741824 >> 24)); 
} 


if (-2147483648 >> 24 !== -128) { 
  $ERROR('#800: -2147483648 >> 24 === -128. Actual: ' + (-2147483648 >> 24)); 
} 


if (-1 >> 25 !== -1) { 
  $ERROR('#801: -1 >> 25 === -1. Actual: ' + (-1 >> 25)); 
} 


if (-2 >> 25 !== -1) { 
  $ERROR('#802: -2 >> 25 === -1. Actual: ' + (-2 >> 25)); 
} 


if (-4 >> 25 !== -1) { 
  $ERROR('#803: -4 >> 25 === -1. Actual: ' + (-4 >> 25)); 
} 


if (-8 >> 25 !== -1) { 
  $ERROR('#804: -8 >> 25 === -1. Actual: ' + (-8 >> 25)); 
} 


if (-16 >> 25 !== -1) { 
  $ERROR('#805: -16 >> 25 === -1. Actual: ' + (-16 >> 25)); 
} 


if (-32 >> 25 !== -1) { 
  $ERROR('#806: -32 >> 25 === -1. Actual: ' + (-32 >> 25)); 
} 


if (-64 >> 25 !== -1) { 
  $ERROR('#807: -64 >> 25 === -1. Actual: ' + (-64 >> 25)); 
} 


if (-128 >> 25 !== -1) { 
  $ERROR('#808: -128 >> 25 === -1. Actual: ' + (-128 >> 25)); 
} 


if (-256 >> 25 !== -1) { 
  $ERROR('#809: -256 >> 25 === -1. Actual: ' + (-256 >> 25)); 
} 


if (-512 >> 25 !== -1) { 
  $ERROR('#810: -512 >> 25 === -1. Actual: ' + (-512 >> 25)); 
} 


if (-1024 >> 25 !== -1) { 
  $ERROR('#811: -1024 >> 25 === -1. Actual: ' + (-1024 >> 25)); 
} 


if (-2048 >> 25 !== -1) { 
  $ERROR('#812: -2048 >> 25 === -1. Actual: ' + (-2048 >> 25)); 
} 


if (-4096 >> 25 !== -1) { 
  $ERROR('#813: -4096 >> 25 === -1. Actual: ' + (-4096 >> 25)); 
} 


if (-8192 >> 25 !== -1) { 
  $ERROR('#814: -8192 >> 25 === -1. Actual: ' + (-8192 >> 25)); 
} 


if (-16384 >> 25 !== -1) { 
  $ERROR('#815: -16384 >> 25 === -1. Actual: ' + (-16384 >> 25)); 
} 


if (-32768 >> 25 !== -1) { 
  $ERROR('#816: -32768 >> 25 === -1. Actual: ' + (-32768 >> 25)); 
} 


if (-65536 >> 25 !== -1) { 
  $ERROR('#817: -65536 >> 25 === -1. Actual: ' + (-65536 >> 25)); 
} 


if (-131072 >> 25 !== -1) { 
  $ERROR('#818: -131072 >> 25 === -1. Actual: ' + (-131072 >> 25)); 
} 


if (-262144 >> 25 !== -1) { 
  $ERROR('#819: -262144 >> 25 === -1. Actual: ' + (-262144 >> 25)); 
} 


if (-524288 >> 25 !== -1) { 
  $ERROR('#820: -524288 >> 25 === -1. Actual: ' + (-524288 >> 25)); 
} 


if (-1048576 >> 25 !== -1) { 
  $ERROR('#821: -1048576 >> 25 === -1. Actual: ' + (-1048576 >> 25)); 
} 


if (-2097152 >> 25 !== -1) { 
  $ERROR('#822: -2097152 >> 25 === -1. Actual: ' + (-2097152 >> 25)); 
} 


if (-4194304 >> 25 !== -1) { 
  $ERROR('#823: -4194304 >> 25 === -1. Actual: ' + (-4194304 >> 25)); 
} 


if (-8388608 >> 25 !== -1) { 
  $ERROR('#824: -8388608 >> 25 === -1. Actual: ' + (-8388608 >> 25)); 
} 


if (-16777216 >> 25 !== -1) { 
  $ERROR('#825: -16777216 >> 25 === -1. Actual: ' + (-16777216 >> 25)); 
} 


if (-33554432 >> 25 !== -1) { 
  $ERROR('#826: -33554432 >> 25 === -1. Actual: ' + (-33554432 >> 25)); 
} 


if (-67108864 >> 25 !== -2) { 
  $ERROR('#827: -67108864 >> 25 === -2. Actual: ' + (-67108864 >> 25)); 
} 


if (-134217728 >> 25 !== -4) { 
  $ERROR('#828: -134217728 >> 25 === -4. Actual: ' + (-134217728 >> 25)); 
} 


if (-268435456 >> 25 !== -8) { 
  $ERROR('#829: -268435456 >> 25 === -8. Actual: ' + (-268435456 >> 25)); 
} 


if (-536870912 >> 25 !== -16) { 
  $ERROR('#830: -536870912 >> 25 === -16. Actual: ' + (-536870912 >> 25)); 
} 


if (-1073741824 >> 25 !== -32) { 
  $ERROR('#831: -1073741824 >> 25 === -32. Actual: ' + (-1073741824 >> 25)); 
} 


if (-2147483648 >> 25 !== -64) { 
  $ERROR('#832: -2147483648 >> 25 === -64. Actual: ' + (-2147483648 >> 25)); 
} 


if (-1 >> 26 !== -1) { 
  $ERROR('#833: -1 >> 26 === -1. Actual: ' + (-1 >> 26)); 
} 


if (-2 >> 26 !== -1) { 
  $ERROR('#834: -2 >> 26 === -1. Actual: ' + (-2 >> 26)); 
} 


if (-4 >> 26 !== -1) { 
  $ERROR('#835: -4 >> 26 === -1. Actual: ' + (-4 >> 26)); 
} 


if (-8 >> 26 !== -1) { 
  $ERROR('#836: -8 >> 26 === -1. Actual: ' + (-8 >> 26)); 
} 


if (-16 >> 26 !== -1) { 
  $ERROR('#837: -16 >> 26 === -1. Actual: ' + (-16 >> 26)); 
} 


if (-32 >> 26 !== -1) { 
  $ERROR('#838: -32 >> 26 === -1. Actual: ' + (-32 >> 26)); 
} 


if (-64 >> 26 !== -1) { 
  $ERROR('#839: -64 >> 26 === -1. Actual: ' + (-64 >> 26)); 
} 


if (-128 >> 26 !== -1) { 
  $ERROR('#840: -128 >> 26 === -1. Actual: ' + (-128 >> 26)); 
} 


if (-256 >> 26 !== -1) { 
  $ERROR('#841: -256 >> 26 === -1. Actual: ' + (-256 >> 26)); 
} 


if (-512 >> 26 !== -1) { 
  $ERROR('#842: -512 >> 26 === -1. Actual: ' + (-512 >> 26)); 
} 


if (-1024 >> 26 !== -1) { 
  $ERROR('#843: -1024 >> 26 === -1. Actual: ' + (-1024 >> 26)); 
} 


if (-2048 >> 26 !== -1) { 
  $ERROR('#844: -2048 >> 26 === -1. Actual: ' + (-2048 >> 26)); 
} 


if (-4096 >> 26 !== -1) { 
  $ERROR('#845: -4096 >> 26 === -1. Actual: ' + (-4096 >> 26)); 
} 


if (-8192 >> 26 !== -1) { 
  $ERROR('#846: -8192 >> 26 === -1. Actual: ' + (-8192 >> 26)); 
} 


if (-16384 >> 26 !== -1) { 
  $ERROR('#847: -16384 >> 26 === -1. Actual: ' + (-16384 >> 26)); 
} 


if (-32768 >> 26 !== -1) { 
  $ERROR('#848: -32768 >> 26 === -1. Actual: ' + (-32768 >> 26)); 
} 


if (-65536 >> 26 !== -1) { 
  $ERROR('#849: -65536 >> 26 === -1. Actual: ' + (-65536 >> 26)); 
} 


if (-131072 >> 26 !== -1) { 
  $ERROR('#850: -131072 >> 26 === -1. Actual: ' + (-131072 >> 26)); 
} 


if (-262144 >> 26 !== -1) { 
  $ERROR('#851: -262144 >> 26 === -1. Actual: ' + (-262144 >> 26)); 
} 


if (-524288 >> 26 !== -1) { 
  $ERROR('#852: -524288 >> 26 === -1. Actual: ' + (-524288 >> 26)); 
} 


if (-1048576 >> 26 !== -1) { 
  $ERROR('#853: -1048576 >> 26 === -1. Actual: ' + (-1048576 >> 26)); 
} 


if (-2097152 >> 26 !== -1) { 
  $ERROR('#854: -2097152 >> 26 === -1. Actual: ' + (-2097152 >> 26)); 
} 


if (-4194304 >> 26 !== -1) { 
  $ERROR('#855: -4194304 >> 26 === -1. Actual: ' + (-4194304 >> 26)); 
} 


if (-8388608 >> 26 !== -1) { 
  $ERROR('#856: -8388608 >> 26 === -1. Actual: ' + (-8388608 >> 26)); 
} 


if (-16777216 >> 26 !== -1) { 
  $ERROR('#857: -16777216 >> 26 === -1. Actual: ' + (-16777216 >> 26)); 
} 


if (-33554432 >> 26 !== -1) { 
  $ERROR('#858: -33554432 >> 26 === -1. Actual: ' + (-33554432 >> 26)); 
} 


if (-67108864 >> 26 !== -1) { 
  $ERROR('#859: -67108864 >> 26 === -1. Actual: ' + (-67108864 >> 26)); 
} 


if (-134217728 >> 26 !== -2) { 
  $ERROR('#860: -134217728 >> 26 === -2. Actual: ' + (-134217728 >> 26)); 
} 


if (-268435456 >> 26 !== -4) { 
  $ERROR('#861: -268435456 >> 26 === -4. Actual: ' + (-268435456 >> 26)); 
} 


if (-536870912 >> 26 !== -8) { 
  $ERROR('#862: -536870912 >> 26 === -8. Actual: ' + (-536870912 >> 26)); 
} 


if (-1073741824 >> 26 !== -16) { 
  $ERROR('#863: -1073741824 >> 26 === -16. Actual: ' + (-1073741824 >> 26)); 
} 


if (-2147483648 >> 26 !== -32) { 
  $ERROR('#864: -2147483648 >> 26 === -32. Actual: ' + (-2147483648 >> 26)); 
} 


if (-1 >> 27 !== -1) { 
  $ERROR('#865: -1 >> 27 === -1. Actual: ' + (-1 >> 27)); 
} 


if (-2 >> 27 !== -1) { 
  $ERROR('#866: -2 >> 27 === -1. Actual: ' + (-2 >> 27)); 
} 


if (-4 >> 27 !== -1) { 
  $ERROR('#867: -4 >> 27 === -1. Actual: ' + (-4 >> 27)); 
} 


if (-8 >> 27 !== -1) { 
  $ERROR('#868: -8 >> 27 === -1. Actual: ' + (-8 >> 27)); 
} 


if (-16 >> 27 !== -1) { 
  $ERROR('#869: -16 >> 27 === -1. Actual: ' + (-16 >> 27)); 
} 


if (-32 >> 27 !== -1) { 
  $ERROR('#870: -32 >> 27 === -1. Actual: ' + (-32 >> 27)); 
} 


if (-64 >> 27 !== -1) { 
  $ERROR('#871: -64 >> 27 === -1. Actual: ' + (-64 >> 27)); 
} 


if (-128 >> 27 !== -1) { 
  $ERROR('#872: -128 >> 27 === -1. Actual: ' + (-128 >> 27)); 
} 


if (-256 >> 27 !== -1) { 
  $ERROR('#873: -256 >> 27 === -1. Actual: ' + (-256 >> 27)); 
} 


if (-512 >> 27 !== -1) { 
  $ERROR('#874: -512 >> 27 === -1. Actual: ' + (-512 >> 27)); 
} 


if (-1024 >> 27 !== -1) { 
  $ERROR('#875: -1024 >> 27 === -1. Actual: ' + (-1024 >> 27)); 
} 


if (-2048 >> 27 !== -1) { 
  $ERROR('#876: -2048 >> 27 === -1. Actual: ' + (-2048 >> 27)); 
} 


if (-4096 >> 27 !== -1) { 
  $ERROR('#877: -4096 >> 27 === -1. Actual: ' + (-4096 >> 27)); 
} 


if (-8192 >> 27 !== -1) { 
  $ERROR('#878: -8192 >> 27 === -1. Actual: ' + (-8192 >> 27)); 
} 


if (-16384 >> 27 !== -1) { 
  $ERROR('#879: -16384 >> 27 === -1. Actual: ' + (-16384 >> 27)); 
} 


if (-32768 >> 27 !== -1) { 
  $ERROR('#880: -32768 >> 27 === -1. Actual: ' + (-32768 >> 27)); 
} 


if (-65536 >> 27 !== -1) { 
  $ERROR('#881: -65536 >> 27 === -1. Actual: ' + (-65536 >> 27)); 
} 


if (-131072 >> 27 !== -1) { 
  $ERROR('#882: -131072 >> 27 === -1. Actual: ' + (-131072 >> 27)); 
} 


if (-262144 >> 27 !== -1) { 
  $ERROR('#883: -262144 >> 27 === -1. Actual: ' + (-262144 >> 27)); 
} 


if (-524288 >> 27 !== -1) { 
  $ERROR('#884: -524288 >> 27 === -1. Actual: ' + (-524288 >> 27)); 
} 


if (-1048576 >> 27 !== -1) { 
  $ERROR('#885: -1048576 >> 27 === -1. Actual: ' + (-1048576 >> 27)); 
} 


if (-2097152 >> 27 !== -1) { 
  $ERROR('#886: -2097152 >> 27 === -1. Actual: ' + (-2097152 >> 27)); 
} 


if (-4194304 >> 27 !== -1) { 
  $ERROR('#887: -4194304 >> 27 === -1. Actual: ' + (-4194304 >> 27)); 
} 


if (-8388608 >> 27 !== -1) { 
  $ERROR('#888: -8388608 >> 27 === -1. Actual: ' + (-8388608 >> 27)); 
} 


if (-16777216 >> 27 !== -1) { 
  $ERROR('#889: -16777216 >> 27 === -1. Actual: ' + (-16777216 >> 27)); 
} 


if (-33554432 >> 27 !== -1) { 
  $ERROR('#890: -33554432 >> 27 === -1. Actual: ' + (-33554432 >> 27)); 
} 


if (-67108864 >> 27 !== -1) { 
  $ERROR('#891: -67108864 >> 27 === -1. Actual: ' + (-67108864 >> 27)); 
} 


if (-134217728 >> 27 !== -1) { 
  $ERROR('#892: -134217728 >> 27 === -1. Actual: ' + (-134217728 >> 27)); 
} 


if (-268435456 >> 27 !== -2) { 
  $ERROR('#893: -268435456 >> 27 === -2. Actual: ' + (-268435456 >> 27)); 
} 


if (-536870912 >> 27 !== -4) { 
  $ERROR('#894: -536870912 >> 27 === -4. Actual: ' + (-536870912 >> 27)); 
} 


if (-1073741824 >> 27 !== -8) { 
  $ERROR('#895: -1073741824 >> 27 === -8. Actual: ' + (-1073741824 >> 27)); 
} 


if (-2147483648 >> 27 !== -16) { 
  $ERROR('#896: -2147483648 >> 27 === -16. Actual: ' + (-2147483648 >> 27)); 
} 


if (-1 >> 28 !== -1) { 
  $ERROR('#897: -1 >> 28 === -1. Actual: ' + (-1 >> 28)); 
} 


if (-2 >> 28 !== -1) { 
  $ERROR('#898: -2 >> 28 === -1. Actual: ' + (-2 >> 28)); 
} 


if (-4 >> 28 !== -1) { 
  $ERROR('#899: -4 >> 28 === -1. Actual: ' + (-4 >> 28)); 
} 


if (-8 >> 28 !== -1) { 
  $ERROR('#900: -8 >> 28 === -1. Actual: ' + (-8 >> 28)); 
} 


if (-16 >> 28 !== -1) { 
  $ERROR('#901: -16 >> 28 === -1. Actual: ' + (-16 >> 28)); 
} 


if (-32 >> 28 !== -1) { 
  $ERROR('#902: -32 >> 28 === -1. Actual: ' + (-32 >> 28)); 
} 


if (-64 >> 28 !== -1) { 
  $ERROR('#903: -64 >> 28 === -1. Actual: ' + (-64 >> 28)); 
} 


if (-128 >> 28 !== -1) { 
  $ERROR('#904: -128 >> 28 === -1. Actual: ' + (-128 >> 28)); 
} 


if (-256 >> 28 !== -1) { 
  $ERROR('#905: -256 >> 28 === -1. Actual: ' + (-256 >> 28)); 
} 


if (-512 >> 28 !== -1) { 
  $ERROR('#906: -512 >> 28 === -1. Actual: ' + (-512 >> 28)); 
} 


if (-1024 >> 28 !== -1) { 
  $ERROR('#907: -1024 >> 28 === -1. Actual: ' + (-1024 >> 28)); 
} 


if (-2048 >> 28 !== -1) { 
  $ERROR('#908: -2048 >> 28 === -1. Actual: ' + (-2048 >> 28)); 
} 


if (-4096 >> 28 !== -1) { 
  $ERROR('#909: -4096 >> 28 === -1. Actual: ' + (-4096 >> 28)); 
} 


if (-8192 >> 28 !== -1) { 
  $ERROR('#910: -8192 >> 28 === -1. Actual: ' + (-8192 >> 28)); 
} 


if (-16384 >> 28 !== -1) { 
  $ERROR('#911: -16384 >> 28 === -1. Actual: ' + (-16384 >> 28)); 
} 


if (-32768 >> 28 !== -1) { 
  $ERROR('#912: -32768 >> 28 === -1. Actual: ' + (-32768 >> 28)); 
} 


if (-65536 >> 28 !== -1) { 
  $ERROR('#913: -65536 >> 28 === -1. Actual: ' + (-65536 >> 28)); 
} 


if (-131072 >> 28 !== -1) { 
  $ERROR('#914: -131072 >> 28 === -1. Actual: ' + (-131072 >> 28)); 
} 


if (-262144 >> 28 !== -1) { 
  $ERROR('#915: -262144 >> 28 === -1. Actual: ' + (-262144 >> 28)); 
} 


if (-524288 >> 28 !== -1) { 
  $ERROR('#916: -524288 >> 28 === -1. Actual: ' + (-524288 >> 28)); 
} 


if (-1048576 >> 28 !== -1) { 
  $ERROR('#917: -1048576 >> 28 === -1. Actual: ' + (-1048576 >> 28)); 
} 


if (-2097152 >> 28 !== -1) { 
  $ERROR('#918: -2097152 >> 28 === -1. Actual: ' + (-2097152 >> 28)); 
} 


if (-4194304 >> 28 !== -1) { 
  $ERROR('#919: -4194304 >> 28 === -1. Actual: ' + (-4194304 >> 28)); 
} 


if (-8388608 >> 28 !== -1) { 
  $ERROR('#920: -8388608 >> 28 === -1. Actual: ' + (-8388608 >> 28)); 
} 


if (-16777216 >> 28 !== -1) { 
  $ERROR('#921: -16777216 >> 28 === -1. Actual: ' + (-16777216 >> 28)); 
} 


if (-33554432 >> 28 !== -1) { 
  $ERROR('#922: -33554432 >> 28 === -1. Actual: ' + (-33554432 >> 28)); 
} 


if (-67108864 >> 28 !== -1) { 
  $ERROR('#923: -67108864 >> 28 === -1. Actual: ' + (-67108864 >> 28)); 
} 


if (-134217728 >> 28 !== -1) { 
  $ERROR('#924: -134217728 >> 28 === -1. Actual: ' + (-134217728 >> 28)); 
} 


if (-268435456 >> 28 !== -1) { 
  $ERROR('#925: -268435456 >> 28 === -1. Actual: ' + (-268435456 >> 28)); 
} 


if (-536870912 >> 28 !== -2) { 
  $ERROR('#926: -536870912 >> 28 === -2. Actual: ' + (-536870912 >> 28)); 
} 


if (-1073741824 >> 28 !== -4) { 
  $ERROR('#927: -1073741824 >> 28 === -4. Actual: ' + (-1073741824 >> 28)); 
} 


if (-2147483648 >> 28 !== -8) { 
  $ERROR('#928: -2147483648 >> 28 === -8. Actual: ' + (-2147483648 >> 28)); 
} 


if (-1 >> 29 !== -1) { 
  $ERROR('#929: -1 >> 29 === -1. Actual: ' + (-1 >> 29)); 
} 


if (-2 >> 29 !== -1) { 
  $ERROR('#930: -2 >> 29 === -1. Actual: ' + (-2 >> 29)); 
} 


if (-4 >> 29 !== -1) { 
  $ERROR('#931: -4 >> 29 === -1. Actual: ' + (-4 >> 29)); 
} 


if (-8 >> 29 !== -1) { 
  $ERROR('#932: -8 >> 29 === -1. Actual: ' + (-8 >> 29)); 
} 


if (-16 >> 29 !== -1) { 
  $ERROR('#933: -16 >> 29 === -1. Actual: ' + (-16 >> 29)); 
} 


if (-32 >> 29 !== -1) { 
  $ERROR('#934: -32 >> 29 === -1. Actual: ' + (-32 >> 29)); 
} 


if (-64 >> 29 !== -1) { 
  $ERROR('#935: -64 >> 29 === -1. Actual: ' + (-64 >> 29)); 
} 


if (-128 >> 29 !== -1) { 
  $ERROR('#936: -128 >> 29 === -1. Actual: ' + (-128 >> 29)); 
} 


if (-256 >> 29 !== -1) { 
  $ERROR('#937: -256 >> 29 === -1. Actual: ' + (-256 >> 29)); 
} 


if (-512 >> 29 !== -1) { 
  $ERROR('#938: -512 >> 29 === -1. Actual: ' + (-512 >> 29)); 
} 


if (-1024 >> 29 !== -1) { 
  $ERROR('#939: -1024 >> 29 === -1. Actual: ' + (-1024 >> 29)); 
} 


if (-2048 >> 29 !== -1) { 
  $ERROR('#940: -2048 >> 29 === -1. Actual: ' + (-2048 >> 29)); 
} 


if (-4096 >> 29 !== -1) { 
  $ERROR('#941: -4096 >> 29 === -1. Actual: ' + (-4096 >> 29)); 
} 


if (-8192 >> 29 !== -1) { 
  $ERROR('#942: -8192 >> 29 === -1. Actual: ' + (-8192 >> 29)); 
} 


if (-16384 >> 29 !== -1) { 
  $ERROR('#943: -16384 >> 29 === -1. Actual: ' + (-16384 >> 29)); 
} 


if (-32768 >> 29 !== -1) { 
  $ERROR('#944: -32768 >> 29 === -1. Actual: ' + (-32768 >> 29)); 
} 


if (-65536 >> 29 !== -1) { 
  $ERROR('#945: -65536 >> 29 === -1. Actual: ' + (-65536 >> 29)); 
} 


if (-131072 >> 29 !== -1) { 
  $ERROR('#946: -131072 >> 29 === -1. Actual: ' + (-131072 >> 29)); 
} 


if (-262144 >> 29 !== -1) { 
  $ERROR('#947: -262144 >> 29 === -1. Actual: ' + (-262144 >> 29)); 
} 


if (-524288 >> 29 !== -1) { 
  $ERROR('#948: -524288 >> 29 === -1. Actual: ' + (-524288 >> 29)); 
} 


if (-1048576 >> 29 !== -1) { 
  $ERROR('#949: -1048576 >> 29 === -1. Actual: ' + (-1048576 >> 29)); 
} 


if (-2097152 >> 29 !== -1) { 
  $ERROR('#950: -2097152 >> 29 === -1. Actual: ' + (-2097152 >> 29)); 
} 


if (-4194304 >> 29 !== -1) { 
  $ERROR('#951: -4194304 >> 29 === -1. Actual: ' + (-4194304 >> 29)); 
} 


if (-8388608 >> 29 !== -1) { 
  $ERROR('#952: -8388608 >> 29 === -1. Actual: ' + (-8388608 >> 29)); 
} 


if (-16777216 >> 29 !== -1) { 
  $ERROR('#953: -16777216 >> 29 === -1. Actual: ' + (-16777216 >> 29)); 
} 


if (-33554432 >> 29 !== -1) { 
  $ERROR('#954: -33554432 >> 29 === -1. Actual: ' + (-33554432 >> 29)); 
} 


if (-67108864 >> 29 !== -1) { 
  $ERROR('#955: -67108864 >> 29 === -1. Actual: ' + (-67108864 >> 29)); 
} 


if (-134217728 >> 29 !== -1) { 
  $ERROR('#956: -134217728 >> 29 === -1. Actual: ' + (-134217728 >> 29)); 
} 


if (-268435456 >> 29 !== -1) { 
  $ERROR('#957: -268435456 >> 29 === -1. Actual: ' + (-268435456 >> 29)); 
} 


if (-536870912 >> 29 !== -1) { 
  $ERROR('#958: -536870912 >> 29 === -1. Actual: ' + (-536870912 >> 29)); 
} 


if (-1073741824 >> 29 !== -2) { 
  $ERROR('#959: -1073741824 >> 29 === -2. Actual: ' + (-1073741824 >> 29)); 
} 


if (-2147483648 >> 29 !== -4) { 
  $ERROR('#960: -2147483648 >> 29 === -4. Actual: ' + (-2147483648 >> 29)); 
} 


if (-1 >> 30 !== -1) { 
  $ERROR('#961: -1 >> 30 === -1. Actual: ' + (-1 >> 30)); 
} 


if (-2 >> 30 !== -1) { 
  $ERROR('#962: -2 >> 30 === -1. Actual: ' + (-2 >> 30)); 
} 


if (-4 >> 30 !== -1) { 
  $ERROR('#963: -4 >> 30 === -1. Actual: ' + (-4 >> 30)); 
} 


if (-8 >> 30 !== -1) { 
  $ERROR('#964: -8 >> 30 === -1. Actual: ' + (-8 >> 30)); 
} 


if (-16 >> 30 !== -1) { 
  $ERROR('#965: -16 >> 30 === -1. Actual: ' + (-16 >> 30)); 
} 


if (-32 >> 30 !== -1) { 
  $ERROR('#966: -32 >> 30 === -1. Actual: ' + (-32 >> 30)); 
} 


if (-64 >> 30 !== -1) { 
  $ERROR('#967: -64 >> 30 === -1. Actual: ' + (-64 >> 30)); 
} 


if (-128 >> 30 !== -1) { 
  $ERROR('#968: -128 >> 30 === -1. Actual: ' + (-128 >> 30)); 
} 


if (-256 >> 30 !== -1) { 
  $ERROR('#969: -256 >> 30 === -1. Actual: ' + (-256 >> 30)); 
} 


if (-512 >> 30 !== -1) { 
  $ERROR('#970: -512 >> 30 === -1. Actual: ' + (-512 >> 30)); 
} 


if (-1024 >> 30 !== -1) { 
  $ERROR('#971: -1024 >> 30 === -1. Actual: ' + (-1024 >> 30)); 
} 


if (-2048 >> 30 !== -1) { 
  $ERROR('#972: -2048 >> 30 === -1. Actual: ' + (-2048 >> 30)); 
} 


if (-4096 >> 30 !== -1) { 
  $ERROR('#973: -4096 >> 30 === -1. Actual: ' + (-4096 >> 30)); 
} 


if (-8192 >> 30 !== -1) { 
  $ERROR('#974: -8192 >> 30 === -1. Actual: ' + (-8192 >> 30)); 
} 


if (-16384 >> 30 !== -1) { 
  $ERROR('#975: -16384 >> 30 === -1. Actual: ' + (-16384 >> 30)); 
} 


if (-32768 >> 30 !== -1) { 
  $ERROR('#976: -32768 >> 30 === -1. Actual: ' + (-32768 >> 30)); 
} 


if (-65536 >> 30 !== -1) { 
  $ERROR('#977: -65536 >> 30 === -1. Actual: ' + (-65536 >> 30)); 
} 


if (-131072 >> 30 !== -1) { 
  $ERROR('#978: -131072 >> 30 === -1. Actual: ' + (-131072 >> 30)); 
} 


if (-262144 >> 30 !== -1) { 
  $ERROR('#979: -262144 >> 30 === -1. Actual: ' + (-262144 >> 30)); 
} 


if (-524288 >> 30 !== -1) { 
  $ERROR('#980: -524288 >> 30 === -1. Actual: ' + (-524288 >> 30)); 
} 


if (-1048576 >> 30 !== -1) { 
  $ERROR('#981: -1048576 >> 30 === -1. Actual: ' + (-1048576 >> 30)); 
} 


if (-2097152 >> 30 !== -1) { 
  $ERROR('#982: -2097152 >> 30 === -1. Actual: ' + (-2097152 >> 30)); 
} 


if (-4194304 >> 30 !== -1) { 
  $ERROR('#983: -4194304 >> 30 === -1. Actual: ' + (-4194304 >> 30)); 
} 


if (-8388608 >> 30 !== -1) { 
  $ERROR('#984: -8388608 >> 30 === -1. Actual: ' + (-8388608 >> 30)); 
} 


if (-16777216 >> 30 !== -1) { 
  $ERROR('#985: -16777216 >> 30 === -1. Actual: ' + (-16777216 >> 30)); 
} 


if (-33554432 >> 30 !== -1) { 
  $ERROR('#986: -33554432 >> 30 === -1. Actual: ' + (-33554432 >> 30)); 
} 


if (-67108864 >> 30 !== -1) { 
  $ERROR('#987: -67108864 >> 30 === -1. Actual: ' + (-67108864 >> 30)); 
} 


if (-134217728 >> 30 !== -1) { 
  $ERROR('#988: -134217728 >> 30 === -1. Actual: ' + (-134217728 >> 30)); 
} 


if (-268435456 >> 30 !== -1) { 
  $ERROR('#989: -268435456 >> 30 === -1. Actual: ' + (-268435456 >> 30)); 
} 


if (-536870912 >> 30 !== -1) { 
  $ERROR('#990: -536870912 >> 30 === -1. Actual: ' + (-536870912 >> 30)); 
} 


if (-1073741824 >> 30 !== -1) { 
  $ERROR('#991: -1073741824 >> 30 === -1. Actual: ' + (-1073741824 >> 30)); 
} 


if (-2147483648 >> 30 !== -2) { 
  $ERROR('#992: -2147483648 >> 30 === -2. Actual: ' + (-2147483648 >> 30)); 
} 


if (-1 >> 31 !== -1) { 
  $ERROR('#993: -1 >> 31 === -1. Actual: ' + (-1 >> 31)); 
} 


if (-2 >> 31 !== -1) { 
  $ERROR('#994: -2 >> 31 === -1. Actual: ' + (-2 >> 31)); 
} 


if (-4 >> 31 !== -1) { 
  $ERROR('#995: -4 >> 31 === -1. Actual: ' + (-4 >> 31)); 
} 


if (-8 >> 31 !== -1) { 
  $ERROR('#996: -8 >> 31 === -1. Actual: ' + (-8 >> 31)); 
} 


if (-16 >> 31 !== -1) { 
  $ERROR('#997: -16 >> 31 === -1. Actual: ' + (-16 >> 31)); 
} 


if (-32 >> 31 !== -1) { 
  $ERROR('#998: -32 >> 31 === -1. Actual: ' + (-32 >> 31)); 
} 


if (-64 >> 31 !== -1) { 
  $ERROR('#999: -64 >> 31 === -1. Actual: ' + (-64 >> 31)); 
} 


if (-128 >> 31 !== -1) { 
  $ERROR('#1000: -128 >> 31 === -1. Actual: ' + (-128 >> 31)); 
} 


if (-256 >> 31 !== -1) { 
  $ERROR('#1001: -256 >> 31 === -1. Actual: ' + (-256 >> 31)); 
} 


if (-512 >> 31 !== -1) { 
  $ERROR('#1002: -512 >> 31 === -1. Actual: ' + (-512 >> 31)); 
} 


if (-1024 >> 31 !== -1) { 
  $ERROR('#1003: -1024 >> 31 === -1. Actual: ' + (-1024 >> 31)); 
} 


if (-2048 >> 31 !== -1) { 
  $ERROR('#1004: -2048 >> 31 === -1. Actual: ' + (-2048 >> 31)); 
} 


if (-4096 >> 31 !== -1) { 
  $ERROR('#1005: -4096 >> 31 === -1. Actual: ' + (-4096 >> 31)); 
} 


if (-8192 >> 31 !== -1) { 
  $ERROR('#1006: -8192 >> 31 === -1. Actual: ' + (-8192 >> 31)); 
} 


if (-16384 >> 31 !== -1) { 
  $ERROR('#1007: -16384 >> 31 === -1. Actual: ' + (-16384 >> 31)); 
} 


if (-32768 >> 31 !== -1) { 
  $ERROR('#1008: -32768 >> 31 === -1. Actual: ' + (-32768 >> 31)); 
} 


if (-65536 >> 31 !== -1) { 
  $ERROR('#1009: -65536 >> 31 === -1. Actual: ' + (-65536 >> 31)); 
} 


if (-131072 >> 31 !== -1) { 
  $ERROR('#1010: -131072 >> 31 === -1. Actual: ' + (-131072 >> 31)); 
} 


if (-262144 >> 31 !== -1) { 
  $ERROR('#1011: -262144 >> 31 === -1. Actual: ' + (-262144 >> 31)); 
} 


if (-524288 >> 31 !== -1) { 
  $ERROR('#1012: -524288 >> 31 === -1. Actual: ' + (-524288 >> 31)); 
} 


if (-1048576 >> 31 !== -1) { 
  $ERROR('#1013: -1048576 >> 31 === -1. Actual: ' + (-1048576 >> 31)); 
} 


if (-2097152 >> 31 !== -1) { 
  $ERROR('#1014: -2097152 >> 31 === -1. Actual: ' + (-2097152 >> 31)); 
} 


if (-4194304 >> 31 !== -1) { 
  $ERROR('#1015: -4194304 >> 31 === -1. Actual: ' + (-4194304 >> 31)); 
} 


if (-8388608 >> 31 !== -1) { 
  $ERROR('#1016: -8388608 >> 31 === -1. Actual: ' + (-8388608 >> 31)); 
} 


if (-16777216 >> 31 !== -1) { 
  $ERROR('#1017: -16777216 >> 31 === -1. Actual: ' + (-16777216 >> 31)); 
} 


if (-33554432 >> 31 !== -1) { 
  $ERROR('#1018: -33554432 >> 31 === -1. Actual: ' + (-33554432 >> 31)); 
} 


if (-67108864 >> 31 !== -1) { 
  $ERROR('#1019: -67108864 >> 31 === -1. Actual: ' + (-67108864 >> 31)); 
} 


if (-134217728 >> 31 !== -1) { 
  $ERROR('#1020: -134217728 >> 31 === -1. Actual: ' + (-134217728 >> 31)); 
} 


if (-268435456 >> 31 !== -1) { 
  $ERROR('#1021: -268435456 >> 31 === -1. Actual: ' + (-268435456 >> 31)); 
} 


if (-536870912 >> 31 !== -1) { 
  $ERROR('#1022: -536870912 >> 31 === -1. Actual: ' + (-536870912 >> 31)); 
} 


if (-1073741824 >> 31 !== -1) { 
  $ERROR('#1023: -1073741824 >> 31 === -1. Actual: ' + (-1073741824 >> 31)); 
} 


if (-2147483648 >> 31 !== -1) { 
  $ERROR('#1024: -2147483648 >> 31 === -1. Actual: ' + (-2147483648 >> 31)); 
}
